1. Field of the Invention
The present invention relates to telecommunications services and more particularly to a system for controlling the provisioning of such services. In an exemplary embodiment, the invention provides for enhancing or otherwise modifying a set of services that are assigned to a given subscriber or subscribers. The invention may advantageously be used to temporarily add a service “overlay” for a subscriber, to provide a desired set of services for a given period of time or in response to various events.
2. Description of Related Art
Recent advances in telecommunications systems have enabled a wide array of special services to be made available to subscribers. Examples of such services include abbreviated dialing, which allows a subscriber to reach a party by dialing less than the entire telephone number of that party, call forwarding, in which calls directed to the subscriber may be forwarded to another line, terminating call screening, which allows the subscriber to specify certain times during which incoming calls are to be rejected, and originating call screening, in which calls to certain telephone numbers are barred. In general, special telecommunications services (“services”) encompass those call features that do more than simply place or terminate telephone calls as dialed.
In the past, special telecommunications services were governed and provided for exclusively by the network switches or other entities that routed calls from one location to another. Such switches or other entities are usually at least part of a “serving system” that provides service for a plurality of subscribers. A typical switch would include a database of control information and call processing logic in addition to its basic switching capabilities. In response to a call placed to or from a subscriber, the switch would then apply services defined by this call processing logic. For example, the service logic may indicate that all unanswered calls to a particular subscriber should be redirected to a particular voice mail server.
This approach was viewed as unwieldy, however, because a telecommunications provider needed to update the software and databases on all of its many switches in order to update services or add new services throughout its telecommunications network. And to further complicate matters, the software needed to program switches from different vendors often differed greatly.
To overcome these limitations, many telecommunications networks have now adopted an advanced intelligent network (“AIN”) approach. According to the AIN approach, much of the control information and call processing logic resides in a central network location or “central control point” instead of in the multitude of switches. Each switch is then programmed with a relatively minimal set of service logic that causes the switch to query the central control point at predefined “trigger points” during call processing, providing the central control point with parameters such as an identification of the calling and called parties, for example. When the central control point receives the query message, it may execute an appropriate set of service logic and/or consult appropriate databases in order to obtain information and instructions needed to provide a special service to the call. In turn, the central control point may return a response message to the switch, instructing the switch how to handle the call.
In this way, the telecommunications switches can be quite generic but still able to carry out a variety of services. Further, changes made to service logic at the central control point can apply to a large number of switches, which makes changing or activating services and adding new services much easier and reduces the problem of differences in switches from different vendors.
An AIN network typically employs a standardized set of messages for communication between the switches (or other such entities) and the central control point, in order to allow for a variety of services. This standardized set of messages may be conveyed, for instance, over an out-of-band common channel interoffice signaling (CCIS) network, according to an established signaling protocol. The most well known such protocol is Signaling System #7 (“SS7”). According to SS7, predefined messages may be coded as Transaction Capabilities Application Part (“TCAP”) messages and routed via a signaling transfer points (“STPs”) between the switches and the central control point.
The particular message set may vary depending on the type of network. For instance, traditional landline AIN networks may operate according to standards are embodied in Bellcore's AIN Release 0.1 and AIN Release 0.2. Typical wireless networks, on the other hand, may operate according to other standards, such as Telecommunications Industry Association (TIA)/Electronics Industry Association (EIA) Interim Standard IS-41 (“Cellular Radiotelecommunications Intersystem Operations”) and Interim Standard IS-771 (“Wireless Intelligent Network”). The entirety of each of these standards (as well as all revisions thereof) is hereby incorporated herein by reference.
In general, the trigger points and other control information about call processing for a given subscriber or group of subscribers can be defined and recorded in a database that is maintained for reference by the serving system during call processing. This set of parameters is considered a type of profile for the subscriber, or a subscriber profile. When the switch receives a request to complete a call to or from a subscriber, the switch may consult the subscriber's profile to determine whether it needs to query a central control point for call-handling instructions and/or whether it should carry out certain call processing logic itself.
By applying the AIN approach, the call processing information that is maintained locally for reference by the switch can be minimized, since most of the service logic and feature information for the subscriber can be maintained by the central control point instead. Further, changes made to service logic at the central control point can apply to a large number of switches, which makes changing or activating services and adding new services much easier and reduces the problem of differences in switches from different vendors.
A subscriber profile may define various types of trigger points and control information. At a basic level, for instance, a profile may define a so-called “all-digits trigger,” which tells the serving system to query the central control point whenever the serving system receives a call origination attempt from the subscriber. Similarly, a profile may define a termination-attempt trigger, which tells the serving system to query the central control point whenever the serving system receives a request to connect a call to the subscriber. Such global triggers can be usefully employed to give the central control point extensive control over the services that will be provided to the subscriber. For instance, upon receipt of a TCAP query that is generated upon call origination, the central control point may determine that the calling subscriber has subscribed to a pre-paid call accounting service; in response, the central control point may initiate logic that will time the subscriber's call and decrement a pre-paid account balance accordingly.
The profile can define more specific triggers as well. For example, the profile may define a call origination trigger indicating that the serving system should further reference the subscriber profile to determine whether the subscriber is attempting to call a restricted destination, e.g., that the subscriber is blocked from calling a dialed number. Such a calling restriction may be desirable for group calling plans such as private branch exchange (“PBX”) or Centrex service, or for parental control, for instance. If the number is blocked, standard local service logic may direct the serving system to respond with a recorded message or other appropriate action, or the trigger may indicate that the serving system should query the central control point for guidance.
As still another example, the profile may define a call termination trigger that indicates that if the called subscriber's line is busy or there is no answer, the call should be forwarded to a particular number that is recorded in subscriber's profile. Alternatively, the termination trigger may indicate that, in response to a busy or no answer condition, the switch should query the central control point for processing instructions. In that event, the central control point may apply a set of service logic for the subscriber and decide that the call should be forwarded to a specified number (e.g., to a specified voice mail system), or that the switch should operate as normal (e.g., provide a busy signal). The central control point may then instruct the switch accordingly.
The AIN concept is applicable in virtually any type of telecommunications network. Examples of such networks include, without limitation, landline networks and wireless networks (e.g., cellular radio transmission networks).
In a traditional AIN arrangement, each serving system typically comprises a switch referred to as a service switching point (“SSP”). The SSP is coupled via an STP network to a central control point, which is referred to as a service control point (“SCP”). The SSP maintains a subscriber profile database (e.g., a table, or more generally a data template or plurality of data templates), which defines trigger points for a given subscriber or group of subscribers. The SCP, in turn, maintains a subscriber profile database as well, indicating what service logic to provide for a particular subscriber or group of subscribers. When the SSP encounters a trigger point during call processing, it generates a TCAP query message defining the subscriber and other parameters, and it sends the query to the SCP. The SCP, in turn references its subscriber profile database, and identifies and executes the appropriate set of service logic. The SCP then generates and sends to the SSP a TCAP response message providing call handling instructions (e.g., a routing instruction, an instruction to play a message to the caller, or an instruction to simply connect the call to the dialed address.) Of course other arrangements are possible as well.
In traditional wireless networks, each serving system typically comprises a switch often referred to as a mobile switching center (“MSC”), as well as a subscriber profile database referred to as a visitor location register (“VLR”). A mobile subscriber (mobile station) communicates over an air interface with a base station in a cell, and the base station is interconnected to the MSC, in order to provide connectivity with other points. Each mobile subscriber is registered in a home system. The home system includes a home location register (“HLR”) that defines the services and features authorized for use by the subscriber. When a mobile subscriber roams into a given serving system (even the subscriber's home system), the serving system engages in signaling communication with the HLR in the subscriber's home system (i) to notify the HLR where the subscriber is located and (ii) to obtain the subscriber's current profile. The serving system then stores the profile in its VLR for reference.
As in traditional landline systems, a wireless network can include a central control point that defines service logic to be executed for one or more subscribers. This central control point can take any form, including but not limited to an SCP and/or an HLR. When the serving system receives a call to or from a given subscriber, the serving system consults the subscriber's profile in the VLR and determines whether to query the central control point. A trigger point in the profile may instruct the serving system to send a signaling message to one or another central control point. The signaling message is typically defined by industry standards and encapsulated in a TCAP message, and the message provides the central control point with appropriate parameters such as an identification of the subscriber. Upon receipt of the signaling message, the central control point identifies and executes a set of service logic for the subscriber and then generates and sends to the serving system a response signaling message providing call handling instructions. In wireless, the AIN arrangement is also referred to as Wireless Intelligent Network (“WIN”).
As an example, a serving system in a wireless network may include in the profile for a given mobile subscriber an all-digits trigger that causes the serving system to query a designated SCP in response to any digit sequence dialed by the subscriber. If the subscriber then dials an abbreviated dialing extension, the serving system would query the designated SCP for call handling instructions, the SCP may then translate the extension into a full routing number and return the full routing number to the serving system, and the serving system would route the call accordingly. As another example, a subscriber's HLR may include in the profile for the subscriber a particular termination trigger that directs the serving system to query a designated SCP for call handling instructions in response to a termination attempt to the subscriber. When the serving system receives a termination to the subscriber, the serving system may then query the HLR for instructions, the HLR may send the termination trigger to the serving system as an “advanced termination trigger” (i.e., one that does not normally reside in the serving system), and the serving system may respond to the trigger by querying the designated SCP for call handling instructions.
In addition, it is possible to arrange for the central control point in one system to communicate with the central control point in another system. For instance, one carrier's network may include an SCP (SCP-1) that provides call processing logic for calls placed to or from the network. However, another carrier's network may include an SCP (SCP-2) that contains service logic for a user who happens to be using the first carrier's network at the moment. (For instance, the second carrier may sell telecommunications services to a customer of the first carrier's). When SCP-1 receives a TCAP query from a serving system in the first's carrier's network, it may pass a signaling message to SCP-2 to find out what to do. SCP-2 may then identify and execute a set of service logic for the subscriber and then generate and return to SCP-1 a response signaling message providing call-handling instructions. SCP-1 would then send a response TCAP message to the serving system conveying the call-handling instructions, and the serving system would carry out the instructions. A mediated service logic system is disclosed, for instance, in a co-pending U.S. patent application entitled “Method and System for Providing Telecommunications Services Using Mediated Service Logic,” filed on Oct. 1, 1999 by Von K. McConnell and assigned to the owner of the present invention, the entirety of which is hereby incorporated by reference.
With advances in telecommunications, the industry has recognized an increasing importance of providing new services for subscribers. In modern wireless communications systems, for instance, the industry has now developed a variety of location-based services for mobile subscribers. By way of example, wireless carriers have proposed offering a “closest-facility” service, in which a subscriber can dial a special number on a mobile station, select a type of facility such as “pizza restaurant” or “hotel” for instance, and the wireless carrier would then tell the subscriber where the nearest facility of that type is located. Such location-based services leverage the growing need to implement position-determination mechanisms in wireless networks, which arose initially to facilitate emergency response service (e.g., 9-1-1 services). Industry protocols defining position determination mechanisms include TIA Group TR-45 Recommendation PN-3890 (“Enhanced Wireless 9-1-1, Phase 2”) and Recommendation PN-4288 (“Beyond Enhanced Wireless 911—Phase 2”), the entirety of which are incorporated herein by reference.
As another example, the industry has suggested the possibility of offering different services for a subscriber or group of subscribers depending on the geographic zone in which the subscriber is currently located. (See, e.g., “CDMA Tiered Services—Stage 1 Description,” Oct. 20, 1998 (“User Zones may provide access to a unique set of services; may automatically activate or invoke or disable certain services or may modify the functionality of a particular service. These capabilities are anticipated to be provided by the network using Virtual Private Network (VPN) or Wireless Intelligent Network (WIN) techniques using User Zones as a trigger.”))
The basic idea here is that a central control point may be programmed with alternative sets of service logic that the central control point may execute depending on where the subscriber is currently located. When a serving system queries the central control point for call processing instructions, the control point can employ a mobile positioning system to determine where the subscriber is currently located and then select an appropriate set of services based on that location. Thus, if the subscriber is in one zone, the control point may then execute a first set of service logic for the subscriber, and if the subscriber is in another zone, the control point may instead execute a second set of service logic for the subscriber. The end result is that the control point can effectively modify the services that are provided to the subscriber, depending on the subscriber's location.
This tiered services arrangement would likely require a serving system to query the central control point in response to every call attempt, in order to give the control point the opportunity to select and apply an appropriate set of service logic for the subscriber. In many instances, however, a subscriber may not change zones, or the subscriber may need only basic call processing services that could be readily handled by the serving system without the help of a central control point. Further, existing tiered services arrangements may not distinguish between subscribers within a given zone and would therefore require the serving system to query the control point in every instance of a call to or from a subscriber in the zone or might otherwise treat every subscriber in a given zone the same. Consequently, this arrangement can unnecessarily drain the resources of the central control point and the network.